package cn.zyb.user.jwt;

import lombok.Data;
import org.apache.poi.ss.formula.functions.T;

import java.util.Date;

/**
 * @author zyb
 * @version 1.0.0
 * @date 2022年07月23日 18:03:40
 * @packageName cn.zyb.user.jwt
 * @className Playload
 * @describe TODO
 */
public class Payload<T> {
  private String id;  // jwt的id(token) - 参考JwtUtils
  //1.登录信息对象Lonininfo对象 - 登录权限【验证登录】
  //2.当前登录人的所有权限的sn - 按钮或资源权限【没有访问该资源的按钮直接不显示】
  //3.当前登录人的菜单信息 - 菜单权限【不同的人登录之后菜单是不一样的】
  private T loginData;  // 用户信息：用户数据，不确定，可以是任意类型
  private Date expiration;  // 过期时间 - 参考JwtUtils

  public String getId() {
    return id;
  }

  public void setId(String id) {
    this.id = id;
  }

  public T getLoginData() {
    return loginData;
  }

  public void setLoginData(T loginData) {
    this.loginData = loginData;
  }

  public Date getExpiration() {
    return expiration;
  }

  public void setExpiration(Date expiration) {
    this.expiration = expiration;
  }

  @Override
  public String toString() {
    return "Payload{" +
      "id='" + id + '\'' +
      ", loginData=" + loginData +
      ", expiration=" + expiration +
      '}';
  }
}
